/**

This file is part of MaCI/GIMnet.

MaCI/GIMnet is free software: you can redistribute it and/or modify it 
under the terms of the GNU Lesser General Public License as published 
by the Free Software Foundation, either version 3 of the License, or 
(at your option) any later version.

MaCI/GIMnet is distributed in the hope that it will be useful, but WITHOUT 
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 
FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public 
License for more details.

You should have received a copy of the GNU Lesser General Public 
License along with GIMnet. (See COPYING.LESSER) If not, see 
<http://www.gnu.org/licenses/>.

**/
/*
*  \class	TPose2D
*  \author 	Jari Saarinen
*  \date 	Fri Mar 10 12:26:39 2006

*  \version: 	0.1  
*/


#include "TPose2D.h"



//---------------------------------------------------------------------------//
// Constructors and destructors
//---------------------------------------------------------------------------//
TPose2D::TPose2D()
{
	a.setValue(0);
	p.setCoord(0,0);	
}

TPose2D::TPose2D(TAngle a, TCoord2D p){
	this->a = a;
	this->p = p;
}
TPose2D::TPose2D(float a, float x, float y){
	this->a.setValue(a);
	this->p.setCoord(x,y);	
}

TPose2D::~TPose2D(){}


//---------------------------------------------------------------------------//
// SET Methods
//---------------------------------------------------------------------------//

void TPose2D::setValue(float a, float x, float y){
	this->a.setValue(a);
	this->p.setCoord(x,y);
}

void TPose2D::setHeading(float a){
	this->a.setValue(a);	
}

void TPose2D::setHeading(TAngle a){
	this->a=a;
}

void TPose2D::setPosition(float x,float y){
	this->p.setCoord(x,y);
}

void TPose2D::setPosition(TCoord2D p){
	this->p = p;
}

//---------------------------------------------------------------------------//
// GET Methods
//---------------------------------------------------------------------------//
float TPose2D::getX(){
	return p.getX();
}
float TPose2D::getY(){
	return p.getY();
}
float TPose2D::getA(){
	return a.getValue();
}
TAngle TPose2D::getAngle(){
	return this->a;
}
TCoord2D TPose2D::getPosition(){
	return this->p;
}
//---------------------------------------------------------------------------//
//---------------------------------------------------------------------------//
